\doxysection{none.\+h}
\hypertarget{none_8h_source}{}\label{none_8h_source}\index{C:/Users/ASUS/Desktop/dm-\/ctrlH7-\/balance-\/9025test/Middlewares/ST/ARM/DSP/Include/dsp/none.h@{C:/Users/ASUS/Desktop/dm-\/ctrlH7-\/balance-\/9025test/Middlewares/ST/ARM/DSP/Include/dsp/none.h}}

\begin{DoxyCode}{0}
\DoxyCodeLine{00001\ \textcolor{comment}{/******************************************************************************}}
\DoxyCodeLine{00002\ \textcolor{comment}{\ *\ @file\ \ \ \ \ none.h}}
\DoxyCodeLine{00003\ \textcolor{comment}{\ *\ @brief\ \ \ \ Intrinsincs\ when\ no\ DSP\ extension\ available}}
\DoxyCodeLine{00004\ \textcolor{comment}{\ *\ @version\ \ V1.9.0}}
\DoxyCodeLine{00005\ \textcolor{comment}{\ *\ @date\ \ \ \ \ 20.\ July\ 2020}}
\DoxyCodeLine{00006\ \textcolor{comment}{\ ******************************************************************************/}}
\DoxyCodeLine{00007\ \textcolor{comment}{/*}}
\DoxyCodeLine{00008\ \textcolor{comment}{\ *\ Copyright\ (c)\ 2010-\/2020\ Arm\ Limited\ or\ its\ affiliates.\ All\ rights\ reserved.}}
\DoxyCodeLine{00009\ \textcolor{comment}{\ *}}
\DoxyCodeLine{00010\ \textcolor{comment}{\ *\ SPDX-\/License-\/Identifier:\ Apache-\/2.0}}
\DoxyCodeLine{00011\ \textcolor{comment}{\ *}}
\DoxyCodeLine{00012\ \textcolor{comment}{\ *\ Licensed\ under\ the\ Apache\ License,\ Version\ 2.0\ (the\ License);\ you\ may}}
\DoxyCodeLine{00013\ \textcolor{comment}{\ *\ not\ use\ this\ file\ except\ in\ compliance\ with\ the\ License.}}
\DoxyCodeLine{00014\ \textcolor{comment}{\ *\ You\ may\ obtain\ a\ copy\ of\ the\ License\ at}}
\DoxyCodeLine{00015\ \textcolor{comment}{\ *}}
\DoxyCodeLine{00016\ \textcolor{comment}{\ *\ www.apache.org/licenses/LICENSE-\/2.0}}
\DoxyCodeLine{00017\ \textcolor{comment}{\ *}}
\DoxyCodeLine{00018\ \textcolor{comment}{\ *\ Unless\ required\ by\ applicable\ law\ or\ agreed\ to\ in\ writing,\ software}}
\DoxyCodeLine{00019\ \textcolor{comment}{\ *\ distributed\ under\ the\ License\ is\ distributed\ on\ an\ AS\ IS\ BASIS,\ WITHOUT}}
\DoxyCodeLine{00020\ \textcolor{comment}{\ *\ WARRANTIES\ OR\ CONDITIONS\ OF\ ANY\ KIND,\ either\ express\ or\ implied.}}
\DoxyCodeLine{00021\ \textcolor{comment}{\ *\ See\ the\ License\ for\ the\ specific\ language\ governing\ permissions\ and}}
\DoxyCodeLine{00022\ \textcolor{comment}{\ *\ limitations\ under\ the\ License.}}
\DoxyCodeLine{00023\ \textcolor{comment}{\ */}}
\DoxyCodeLine{00024\ }
\DoxyCodeLine{00025\ \textcolor{comment}{/*}}
\DoxyCodeLine{00026\ \textcolor{comment}{}}
\DoxyCodeLine{00027\ \textcolor{comment}{Definitions\ in\ this\ file\ are\ allowing\ to\ reuse\ some\ versions\ of\ the}}
\DoxyCodeLine{00028\ \textcolor{comment}{CMSIS-\/DSP\ to\ build\ on\ a\ core\ (M0\ for\ instance)\ or\ a\ host\ where}}
\DoxyCodeLine{00029\ \textcolor{comment}{DSP\ extension\ are\ not\ available.}}
\DoxyCodeLine{00030\ \textcolor{comment}{}}
\DoxyCodeLine{00031\ \textcolor{comment}{Ideally\ a\ pure\ C\ version\ should\ have\ been\ used\ instead.}}
\DoxyCodeLine{00032\ \textcolor{comment}{But\ those\ are\ not\ always\ available\ or\ use\ a\ restricted\ set}}
\DoxyCodeLine{00033\ \textcolor{comment}{of\ intrinsics.}}
\DoxyCodeLine{00034\ \textcolor{comment}{}}
\DoxyCodeLine{00035\ \textcolor{comment}{*/}}
\DoxyCodeLine{00036\ \ }
\DoxyCodeLine{00037\ \textcolor{preprocessor}{\#ifndef\ \_NONE\_H\_}}
\DoxyCodeLine{00038\ \textcolor{preprocessor}{\#define\ \_NONE\_H\_}}
\DoxyCodeLine{00039\ }
\DoxyCodeLine{00040\ \textcolor{preprocessor}{\#include\ "{}arm\_math\_types.h"{}}}
\DoxyCodeLine{00041\ }
\DoxyCodeLine{00042\ \textcolor{preprocessor}{\#ifdef\ \ \ \_\_cplusplus}}
\DoxyCodeLine{00043\ \textcolor{keyword}{extern}\ \textcolor{stringliteral}{"{}C"{}}}
\DoxyCodeLine{00044\ \{}
\DoxyCodeLine{00045\ \textcolor{preprocessor}{\#endif}}
\DoxyCodeLine{00046\ }
\DoxyCodeLine{00047\ \ }
\DoxyCodeLine{00048\ }
\DoxyCodeLine{00049\ \textcolor{comment}{/*}}
\DoxyCodeLine{00050\ \textcolor{comment}{}}
\DoxyCodeLine{00051\ \textcolor{comment}{Normally\ those\ kind\ of\ definitions\ are\ in\ a\ compiler\ file}}
\DoxyCodeLine{00052\ \textcolor{comment}{in\ Core\ or\ Core\_A.}}
\DoxyCodeLine{00053\ \textcolor{comment}{}}
\DoxyCodeLine{00054\ \textcolor{comment}{But\ for\ MSVC\ compiler\ it\ is\ a\ bit\ special.\ The\ goal\ is\ very\ specific}}
\DoxyCodeLine{00055\ \textcolor{comment}{to\ CMSIS-\/DSP\ and\ only\ to\ allow\ the\ use\ of\ this\ library\ from\ other}}
\DoxyCodeLine{00056\ \textcolor{comment}{systems\ like\ Python\ or\ Matlab.}}
\DoxyCodeLine{00057\ \textcolor{comment}{}}
\DoxyCodeLine{00058\ \textcolor{comment}{MSVC\ is\ not\ going\ to\ be\ used\ to\ cross-\/compile\ to\ ARM.\ So,\ having\ a\ MSVC}}
\DoxyCodeLine{00059\ \textcolor{comment}{compiler\ file\ in\ Core\ or\ Core\_A\ would\ not\ make\ sense.}}
\DoxyCodeLine{00060\ \textcolor{comment}{}}
\DoxyCodeLine{00061\ \textcolor{comment}{*/}}
\DoxyCodeLine{00062\ \textcolor{preprocessor}{\#if\ defined\ (\ \_MSC\_VER\ )\ ||\ defined(\_\_GNUC\_PYTHON\_\_)\ ||\ defined(\_\_APPLE\_CC\_\_)}}
\DoxyCodeLine{00063\ \ \ \ \ \_\_STATIC\_FORCEINLINE\ uint8\_t\ \mbox{\hyperlink{group___c_m_s_i_s___core___instruction_interface_ga5d5bb1527e042be4a9fa5a33f65cc248}{\_\_CLZ}}(uint32\_t\ data)}
\DoxyCodeLine{00064\ \ \ \ \ \{}
\DoxyCodeLine{00065\ \ \ \ \ \ \ \textcolor{keywordflow}{if}\ (data\ ==\ 0U)\ \{\ \textcolor{keywordflow}{return}\ 32U;\ \}}
\DoxyCodeLine{00066\ }
\DoxyCodeLine{00067\ \ \ \ \ \ \ uint32\_t\ count\ =\ 0U;}
\DoxyCodeLine{00068\ \ \ \ \ \ \ uint32\_t\ mask\ =\ 0x80000000U;}
\DoxyCodeLine{00069\ }
\DoxyCodeLine{00070\ \ \ \ \ \ \ \textcolor{keywordflow}{while}\ ((data\ \&\ mask)\ ==\ 0U)}
\DoxyCodeLine{00071\ \ \ \ \ \ \ \{}
\DoxyCodeLine{00072\ \ \ \ \ \ \ \ \ count\ +=\ 1U;}
\DoxyCodeLine{00073\ \ \ \ \ \ \ \ \ mask\ =\ mask\ >>\ 1U;}
\DoxyCodeLine{00074\ \ \ \ \ \ \ \}}
\DoxyCodeLine{00075\ \ \ \ \ \ \ \textcolor{keywordflow}{return}\ count;}
\DoxyCodeLine{00076\ \ \ \ \ \}}
\DoxyCodeLine{00077\ }
\DoxyCodeLine{00078\ \ \ \_\_STATIC\_FORCEINLINE\ int32\_t\ \mbox{\hyperlink{group___c_m_s_i_s___core___instruction_interface_ga372c0535573dde3e37f0f08c774a3487}{\_\_SSAT}}(int32\_t\ val,\ uint32\_t\ sat)}
\DoxyCodeLine{00079\ \ \ \{}
\DoxyCodeLine{00080\ \ \ \ \ \textcolor{keywordflow}{if}\ ((sat\ >=\ 1U)\ \&\&\ (sat\ <=\ 32U))}
\DoxyCodeLine{00081\ \ \ \ \ \{}
\DoxyCodeLine{00082\ \ \ \ \ \ \ \textcolor{keyword}{const}\ int32\_t\ max\ =\ (int32\_t)((1U\ <<\ (sat\ -\/\ 1U))\ -\/\ 1U);}
\DoxyCodeLine{00083\ \ \ \ \ \ \ \textcolor{keyword}{const}\ int32\_t\ min\ =\ -\/1\ -\/\ max\ ;}
\DoxyCodeLine{00084\ \ \ \ \ \ \ \textcolor{keywordflow}{if}\ (val\ >\ max)}
\DoxyCodeLine{00085\ \ \ \ \ \ \ \{}
\DoxyCodeLine{00086\ \ \ \ \ \ \ \ \ \textcolor{keywordflow}{return}\ max;}
\DoxyCodeLine{00087\ \ \ \ \ \ \ \}}
\DoxyCodeLine{00088\ \ \ \ \ \ \ \textcolor{keywordflow}{else}\ \textcolor{keywordflow}{if}\ (val\ <\ min)}
\DoxyCodeLine{00089\ \ \ \ \ \ \ \{}
\DoxyCodeLine{00090\ \ \ \ \ \ \ \ \ \textcolor{keywordflow}{return}\ min;}
\DoxyCodeLine{00091\ \ \ \ \ \ \ \}}
\DoxyCodeLine{00092\ \ \ \ \ \}}
\DoxyCodeLine{00093\ \ \ \ \ \textcolor{keywordflow}{return}\ val;}
\DoxyCodeLine{00094\ \ \ \}}
\DoxyCodeLine{00095\ }
\DoxyCodeLine{00096\ \ \ \_\_STATIC\_FORCEINLINE\ uint32\_t\ \mbox{\hyperlink{group___c_m_s_i_s___core___instruction_interface_ga6562dbd8182d1571e22dbca7ebdfa9bc}{\_\_USAT}}(int32\_t\ val,\ uint32\_t\ sat)}
\DoxyCodeLine{00097\ \ \ \{}
\DoxyCodeLine{00098\ \ \ \ \ \textcolor{keywordflow}{if}\ (sat\ <=\ 31U)}
\DoxyCodeLine{00099\ \ \ \ \ \{}
\DoxyCodeLine{00100\ \ \ \ \ \ \ \textcolor{keyword}{const}\ uint32\_t\ max\ =\ ((1U\ <<\ sat)\ -\/\ 1U);}
\DoxyCodeLine{00101\ \ \ \ \ \ \ \textcolor{keywordflow}{if}\ (val\ >\ (int32\_t)max)}
\DoxyCodeLine{00102\ \ \ \ \ \ \ \{}
\DoxyCodeLine{00103\ \ \ \ \ \ \ \ \ \textcolor{keywordflow}{return}\ max;}
\DoxyCodeLine{00104\ \ \ \ \ \ \ \}}
\DoxyCodeLine{00105\ \ \ \ \ \ \ \textcolor{keywordflow}{else}\ \textcolor{keywordflow}{if}\ (val\ <\ 0)}
\DoxyCodeLine{00106\ \ \ \ \ \ \ \{}
\DoxyCodeLine{00107\ \ \ \ \ \ \ \ \ \textcolor{keywordflow}{return}\ 0U;}
\DoxyCodeLine{00108\ \ \ \ \ \ \ \}}
\DoxyCodeLine{00109\ \ \ \ \ \}}
\DoxyCodeLine{00110\ \ \ \ \ \textcolor{keywordflow}{return}\ (uint32\_t)val;}
\DoxyCodeLine{00111\ \ \ \}}
\DoxyCodeLine{00112\ }
\DoxyCodeLine{00120\ \_\_STATIC\_FORCEINLINE\ uint32\_t\ \mbox{\hyperlink{group___c_m_s_i_s___core___instruction_interface_ga95b9bd281ddeda378b85afdb8f2ced86}{\_\_ROR}}(uint32\_t\ op1,\ uint32\_t\ op2)}
\DoxyCodeLine{00121\ \{}
\DoxyCodeLine{00122\ \ \ op2\ \%=\ 32U;}
\DoxyCodeLine{00123\ \ \ \textcolor{keywordflow}{if}\ (op2\ ==\ 0U)}
\DoxyCodeLine{00124\ \ \ \{}
\DoxyCodeLine{00125\ \ \ \ \ \textcolor{keywordflow}{return}\ op1;}
\DoxyCodeLine{00126\ \ \ \}}
\DoxyCodeLine{00127\ \ \ \textcolor{keywordflow}{return}\ (op1\ >>\ op2)\ |\ (op1\ <<\ (32U\ -\/\ op2));}
\DoxyCodeLine{00128\ \}}
\DoxyCodeLine{00129\ }
\DoxyCodeLine{00130\ }
\DoxyCodeLine{00131\ \textcolor{preprocessor}{\#endif}}
\DoxyCodeLine{00132\ }
\DoxyCodeLine{00136\ \ \ \_\_STATIC\_FORCEINLINE\ q31\_t\ clip\_q63\_to\_q31(}
\DoxyCodeLine{00137\ \ \ q63\_t\ x)}
\DoxyCodeLine{00138\ \ \ \{}
\DoxyCodeLine{00139\ \ \ \ \ \textcolor{keywordflow}{return}\ ((q31\_t)\ (x\ >>\ 32)\ !=\ ((q31\_t)\ x\ >>\ 31))\ ?}
\DoxyCodeLine{00140\ \ \ \ \ \ \ ((0x7FFFFFFF\ \string^\ ((q31\_t)\ (x\ >>\ 63))))\ :\ (q31\_t)\ x;}
\DoxyCodeLine{00141\ \ \ \}}
\DoxyCodeLine{00142\ }
\DoxyCodeLine{00146\ \ \ \_\_STATIC\_FORCEINLINE\ q15\_t\ clip\_q63\_to\_q15(}
\DoxyCodeLine{00147\ \ \ q63\_t\ x)}
\DoxyCodeLine{00148\ \ \ \{}
\DoxyCodeLine{00149\ \ \ \ \ \textcolor{keywordflow}{return}\ ((q31\_t)\ (x\ >>\ 32)\ !=\ ((q31\_t)\ x\ >>\ 31))\ ?}
\DoxyCodeLine{00150\ \ \ \ \ \ \ ((0x7FFF\ \string^\ ((q15\_t)\ (x\ >>\ 63))))\ :\ (q15\_t)\ (x\ >>\ 15);}
\DoxyCodeLine{00151\ \ \ \}}
\DoxyCodeLine{00152\ }
\DoxyCodeLine{00156\ \ \ \_\_STATIC\_FORCEINLINE\ q7\_t\ clip\_q31\_to\_q7(}
\DoxyCodeLine{00157\ \ \ q31\_t\ x)}
\DoxyCodeLine{00158\ \ \ \{}
\DoxyCodeLine{00159\ \ \ \ \ \textcolor{keywordflow}{return}\ ((q31\_t)\ (x\ >>\ 24)\ !=\ ((q31\_t)\ x\ >>\ 23))\ ?}
\DoxyCodeLine{00160\ \ \ \ \ \ \ ((0x7F\ \string^\ ((q7\_t)\ (x\ >>\ 31))))\ :\ (q7\_t)\ x;}
\DoxyCodeLine{00161\ \ \ \}}
\DoxyCodeLine{00162\ }
\DoxyCodeLine{00166\ \ \ \_\_STATIC\_FORCEINLINE\ q15\_t\ clip\_q31\_to\_q15(}
\DoxyCodeLine{00167\ \ \ q31\_t\ x)}
\DoxyCodeLine{00168\ \ \ \{}
\DoxyCodeLine{00169\ \ \ \ \ \textcolor{keywordflow}{return}\ ((q31\_t)\ (x\ >>\ 16)\ !=\ ((q31\_t)\ x\ >>\ 15))\ ?}
\DoxyCodeLine{00170\ \ \ \ \ \ \ ((0x7FFF\ \string^\ ((q15\_t)\ (x\ >>\ 31))))\ :\ (q15\_t)\ x;}
\DoxyCodeLine{00171\ \ \ \}}
\DoxyCodeLine{00172\ }
\DoxyCodeLine{00176\ \ \ \_\_STATIC\_FORCEINLINE\ q63\_t\ mult32x64(}
\DoxyCodeLine{00177\ \ \ q63\_t\ x,}
\DoxyCodeLine{00178\ \ \ q31\_t\ y)}
\DoxyCodeLine{00179\ \ \ \{}
\DoxyCodeLine{00180\ \ \ \ \ \textcolor{keywordflow}{return}\ ((((q63\_t)\ (x\ \&\ 0x00000000FFFFFFFF)\ *\ y)\ >>\ 32)\ +}
\DoxyCodeLine{00181\ \ \ \ \ \ \ \ \ \ \ \ \ (((q63\_t)\ (x\ >>\ 32)\ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ *\ y)\ \ \ \ \ \ )\ \ );}
\DoxyCodeLine{00182\ \ \ \}}
\DoxyCodeLine{00183\ }
\DoxyCodeLine{00184\ \textcolor{comment}{/*\ SMMLAR\ */}}
\DoxyCodeLine{00185\ \textcolor{preprocessor}{\#define\ multAcc\_32x32\_keep32\_R(a,\ x,\ y)\ \(\backslash\)}}
\DoxyCodeLine{00186\ \textcolor{preprocessor}{\ \ \ \ a\ =\ (q31\_t)\ (((((q63\_t)\ a)\ <<\ 32)\ +\ ((q63\_t)\ x\ *\ y)\ +\ 0x80000000LL\ )\ >>\ 32)}}
\DoxyCodeLine{00187\ }
\DoxyCodeLine{00188\ \textcolor{comment}{/*\ SMMLSR\ */}}
\DoxyCodeLine{00189\ \textcolor{preprocessor}{\#define\ multSub\_32x32\_keep32\_R(a,\ x,\ y)\ \(\backslash\)}}
\DoxyCodeLine{00190\ \textcolor{preprocessor}{\ \ \ \ a\ =\ (q31\_t)\ (((((q63\_t)\ a)\ <<\ 32)\ -\/\ ((q63\_t)\ x\ *\ y)\ +\ 0x80000000LL\ )\ >>\ 32)}}
\DoxyCodeLine{00191\ }
\DoxyCodeLine{00192\ \textcolor{comment}{/*\ SMMULR\ */}}
\DoxyCodeLine{00193\ \textcolor{preprocessor}{\#define\ mult\_32x32\_keep32\_R(a,\ x,\ y)\ \(\backslash\)}}
\DoxyCodeLine{00194\ \textcolor{preprocessor}{\ \ \ \ a\ =\ (q31\_t)\ (((q63\_t)\ x\ *\ y\ +\ 0x80000000LL\ )\ >>\ 32)}}
\DoxyCodeLine{00195\ }
\DoxyCodeLine{00196\ \textcolor{comment}{/*\ SMMLA\ */}}
\DoxyCodeLine{00197\ \textcolor{preprocessor}{\#define\ multAcc\_32x32\_keep32(a,\ x,\ y)\ \(\backslash\)}}
\DoxyCodeLine{00198\ \textcolor{preprocessor}{\ \ \ \ a\ +=\ (q31\_t)\ (((q63\_t)\ x\ *\ y)\ >>\ 32)}}
\DoxyCodeLine{00199\ }
\DoxyCodeLine{00200\ \textcolor{comment}{/*\ SMMLS\ */}}
\DoxyCodeLine{00201\ \textcolor{preprocessor}{\#define\ multSub\_32x32\_keep32(a,\ x,\ y)\ \(\backslash\)}}
\DoxyCodeLine{00202\ \textcolor{preprocessor}{\ \ \ \ a\ -\/=\ (q31\_t)\ (((q63\_t)\ x\ *\ y)\ >>\ 32)}}
\DoxyCodeLine{00203\ }
\DoxyCodeLine{00204\ \textcolor{comment}{/*\ SMMUL\ */}}
\DoxyCodeLine{00205\ \textcolor{preprocessor}{\#define\ mult\_32x32\_keep32(a,\ x,\ y)\ \(\backslash\)}}
\DoxyCodeLine{00206\ \textcolor{preprocessor}{\ \ \ \ a\ =\ (q31\_t)\ (((q63\_t)\ x\ *\ y\ )\ >>\ 32)}}
\DoxyCodeLine{00207\ }
\DoxyCodeLine{00208\ \textcolor{preprocessor}{\#ifndef\ ARM\_MATH\_DSP}\textcolor{preprocessor}{}}
\DoxyCodeLine{00212\ \textcolor{preprocessor}{\ \ \#define\ \_\_PKHBT(ARG1,\ ARG2,\ ARG3)\ (\ (((int32\_t)(ARG1)\ <<\ \ \ \ 0)\ \&\ (int32\_t)0x0000FFFF)\ |\ \(\backslash\)}}
\DoxyCodeLine{00213\ \textcolor{preprocessor}{\ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ (((int32\_t)(ARG2)\ <<\ ARG3)\ \&\ (int32\_t)0xFFFF0000)\ \ )}}
\DoxyCodeLine{00214\ \textcolor{preprocessor}{\ \ \#define\ \_\_PKHTB(ARG1,\ ARG2,\ ARG3)\ (\ (((int32\_t)(ARG1)\ <<\ \ \ \ 0)\ \&\ (int32\_t)0xFFFF0000)\ |\ \(\backslash\)}}
\DoxyCodeLine{00215\ \textcolor{preprocessor}{\ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ (((int32\_t)(ARG2)\ >>\ ARG3)\ \&\ (int32\_t)0x0000FFFF)\ \ )}}
\DoxyCodeLine{00216\ \textcolor{preprocessor}{\#endif}}
\DoxyCodeLine{00217\ }
\DoxyCodeLine{00221\ \textcolor{preprocessor}{\#ifndef\ ARM\_MATH\_BIG\_ENDIAN}}
\DoxyCodeLine{00222\ \textcolor{preprocessor}{\ \ \#define\ \_\_PACKq7(v0,v1,v2,v3)\ (\ (((int32\_t)(v0)\ <<\ \ 0)\ \&\ (int32\_t)0x000000FF)\ |\ \(\backslash\)}}
\DoxyCodeLine{00223\ \textcolor{preprocessor}{\ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ (((int32\_t)(v1)\ <<\ \ 8)\ \&\ (int32\_t)0x0000FF00)\ |\ \(\backslash\)}}
\DoxyCodeLine{00224\ \textcolor{preprocessor}{\ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ (((int32\_t)(v2)\ <<\ 16)\ \&\ (int32\_t)0x00FF0000)\ |\ \(\backslash\)}}
\DoxyCodeLine{00225\ \textcolor{preprocessor}{\ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ (((int32\_t)(v3)\ <<\ 24)\ \&\ (int32\_t)0xFF000000)\ \ )}}
\DoxyCodeLine{00226\ \textcolor{preprocessor}{\#else}}
\DoxyCodeLine{00227\ \textcolor{preprocessor}{\ \ \#define\ \_\_PACKq7(v0,v1,v2,v3)\ (\ (((int32\_t)(v3)\ <<\ \ 0)\ \&\ (int32\_t)0x000000FF)\ |\ \(\backslash\)}}
\DoxyCodeLine{00228\ \textcolor{preprocessor}{\ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ (((int32\_t)(v2)\ <<\ \ 8)\ \&\ (int32\_t)0x0000FF00)\ |\ \(\backslash\)}}
\DoxyCodeLine{00229\ \textcolor{preprocessor}{\ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ (((int32\_t)(v1)\ <<\ 16)\ \&\ (int32\_t)0x00FF0000)\ |\ \(\backslash\)}}
\DoxyCodeLine{00230\ \textcolor{preprocessor}{\ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ (((int32\_t)(v0)\ <<\ 24)\ \&\ (int32\_t)0xFF000000)\ \ )}}
\DoxyCodeLine{00231\ \textcolor{preprocessor}{\#endif}}
\DoxyCodeLine{00232\ }
\DoxyCodeLine{00233\ }
\DoxyCodeLine{00234\ \ }
\DoxyCodeLine{00235\ }
\DoxyCodeLine{00236\ \textcolor{comment}{/*}}
\DoxyCodeLine{00237\ \textcolor{comment}{\ *\ @brief\ C\ custom\ defined\ intrinsic\ functions}}
\DoxyCodeLine{00238\ \textcolor{comment}{\ */}}
\DoxyCodeLine{00239\ \textcolor{preprocessor}{\#if\ !defined\ (ARM\_MATH\_DSP)}}
\DoxyCodeLine{00240\ }
\DoxyCodeLine{00241\ }
\DoxyCodeLine{00242\ \ \ \textcolor{comment}{/*}}
\DoxyCodeLine{00243\ \textcolor{comment}{\ \ \ *\ @brief\ C\ custom\ defined\ QADD8}}
\DoxyCodeLine{00244\ \textcolor{comment}{\ \ \ */}}
\DoxyCodeLine{00245\ \ \ \_\_STATIC\_FORCEINLINE\ uint32\_t\ \_\_QADD8(}
\DoxyCodeLine{00246\ \ \ uint32\_t\ x,}
\DoxyCodeLine{00247\ \ \ uint32\_t\ y)}
\DoxyCodeLine{00248\ \ \ \{}
\DoxyCodeLine{00249\ \ \ \ \ q31\_t\ r,\ s,\ t,\ u;}
\DoxyCodeLine{00250\ }
\DoxyCodeLine{00251\ \ \ \ \ r\ =\ \mbox{\hyperlink{group___c_m_s_i_s___core___instruction_interface_ga372c0535573dde3e37f0f08c774a3487}{\_\_SSAT}}(((((q31\_t)x\ <<\ 24)\ >>\ 24)\ +\ (((q31\_t)y\ <<\ 24)\ >>\ 24)),\ 8)\ \&\ (int32\_t)0x000000FF;}
\DoxyCodeLine{00252\ \ \ \ \ s\ =\ \mbox{\hyperlink{group___c_m_s_i_s___core___instruction_interface_ga372c0535573dde3e37f0f08c774a3487}{\_\_SSAT}}(((((q31\_t)x\ <<\ 16)\ >>\ 24)\ +\ (((q31\_t)y\ <<\ 16)\ >>\ 24)),\ 8)\ \&\ (int32\_t)0x000000FF;}
\DoxyCodeLine{00253\ \ \ \ \ t\ =\ \mbox{\hyperlink{group___c_m_s_i_s___core___instruction_interface_ga372c0535573dde3e37f0f08c774a3487}{\_\_SSAT}}(((((q31\_t)x\ <<\ \ 8)\ >>\ 24)\ +\ (((q31\_t)y\ <<\ \ 8)\ >>\ 24)),\ 8)\ \&\ (int32\_t)0x000000FF;}
\DoxyCodeLine{00254\ \ \ \ \ u\ =\ \mbox{\hyperlink{group___c_m_s_i_s___core___instruction_interface_ga372c0535573dde3e37f0f08c774a3487}{\_\_SSAT}}(((((q31\_t)x\ \ \ \ \ \ )\ >>\ 24)\ +\ (((q31\_t)y\ \ \ \ \ \ )\ >>\ 24)),\ 8)\ \&\ (int32\_t)0x000000FF;}
\DoxyCodeLine{00255\ }
\DoxyCodeLine{00256\ \ \ \ \ \textcolor{keywordflow}{return}\ ((uint32\_t)((u\ <<\ 24)\ |\ (t\ <<\ 16)\ |\ (s\ <<\ \ 8)\ |\ (r\ \ \ \ \ \ )));}
\DoxyCodeLine{00257\ \ \ \}}
\DoxyCodeLine{00258\ }
\DoxyCodeLine{00259\ }
\DoxyCodeLine{00260\ \ \ \textcolor{comment}{/*}}
\DoxyCodeLine{00261\ \textcolor{comment}{\ \ \ *\ @brief\ C\ custom\ defined\ QSUB8}}
\DoxyCodeLine{00262\ \textcolor{comment}{\ \ \ */}}
\DoxyCodeLine{00263\ \ \ \_\_STATIC\_FORCEINLINE\ uint32\_t\ \_\_QSUB8(}
\DoxyCodeLine{00264\ \ \ uint32\_t\ x,}
\DoxyCodeLine{00265\ \ \ uint32\_t\ y)}
\DoxyCodeLine{00266\ \ \ \{}
\DoxyCodeLine{00267\ \ \ \ \ q31\_t\ r,\ s,\ t,\ u;}
\DoxyCodeLine{00268\ }
\DoxyCodeLine{00269\ \ \ \ \ r\ =\ \mbox{\hyperlink{group___c_m_s_i_s___core___instruction_interface_ga372c0535573dde3e37f0f08c774a3487}{\_\_SSAT}}(((((q31\_t)x\ <<\ 24)\ >>\ 24)\ -\/\ (((q31\_t)y\ <<\ 24)\ >>\ 24)),\ 8)\ \&\ (int32\_t)0x000000FF;}
\DoxyCodeLine{00270\ \ \ \ \ s\ =\ \mbox{\hyperlink{group___c_m_s_i_s___core___instruction_interface_ga372c0535573dde3e37f0f08c774a3487}{\_\_SSAT}}(((((q31\_t)x\ <<\ 16)\ >>\ 24)\ -\/\ (((q31\_t)y\ <<\ 16)\ >>\ 24)),\ 8)\ \&\ (int32\_t)0x000000FF;}
\DoxyCodeLine{00271\ \ \ \ \ t\ =\ \mbox{\hyperlink{group___c_m_s_i_s___core___instruction_interface_ga372c0535573dde3e37f0f08c774a3487}{\_\_SSAT}}(((((q31\_t)x\ <<\ \ 8)\ >>\ 24)\ -\/\ (((q31\_t)y\ <<\ \ 8)\ >>\ 24)),\ 8)\ \&\ (int32\_t)0x000000FF;}
\DoxyCodeLine{00272\ \ \ \ \ u\ =\ \mbox{\hyperlink{group___c_m_s_i_s___core___instruction_interface_ga372c0535573dde3e37f0f08c774a3487}{\_\_SSAT}}(((((q31\_t)x\ \ \ \ \ \ )\ >>\ 24)\ -\/\ (((q31\_t)y\ \ \ \ \ \ )\ >>\ 24)),\ 8)\ \&\ (int32\_t)0x000000FF;}
\DoxyCodeLine{00273\ }
\DoxyCodeLine{00274\ \ \ \ \ \textcolor{keywordflow}{return}\ ((uint32\_t)((u\ <<\ 24)\ |\ (t\ <<\ 16)\ |\ (s\ <<\ \ 8)\ |\ (r\ \ \ \ \ \ )));}
\DoxyCodeLine{00275\ \ \ \}}
\DoxyCodeLine{00276\ }
\DoxyCodeLine{00277\ }
\DoxyCodeLine{00278\ \ \ \textcolor{comment}{/*}}
\DoxyCodeLine{00279\ \textcolor{comment}{\ \ \ *\ @brief\ C\ custom\ defined\ QADD16}}
\DoxyCodeLine{00280\ \textcolor{comment}{\ \ \ */}}
\DoxyCodeLine{00281\ \ \ \_\_STATIC\_FORCEINLINE\ uint32\_t\ \_\_QADD16(}
\DoxyCodeLine{00282\ \ \ uint32\_t\ x,}
\DoxyCodeLine{00283\ \ \ uint32\_t\ y)}
\DoxyCodeLine{00284\ \ \ \{}
\DoxyCodeLine{00285\ \textcolor{comment}{/*\ \ q31\_t\ r,\ \ \ \ \ s;\ \ without\ initialisation\ 'arm\_offset\_q15\ test'\ fails\ \ but\ 'intrinsic'\ tests\ pass!\ for\ armCC\ */}}
\DoxyCodeLine{00286\ \ \ \ \ q31\_t\ r\ =\ 0,\ s\ =\ 0;}
\DoxyCodeLine{00287\ }
\DoxyCodeLine{00288\ \ \ \ \ r\ =\ \mbox{\hyperlink{group___c_m_s_i_s___core___instruction_interface_ga372c0535573dde3e37f0f08c774a3487}{\_\_SSAT}}(((((q31\_t)x\ <<\ 16)\ >>\ 16)\ +\ (((q31\_t)y\ <<\ 16)\ >>\ 16)),\ 16)\ \&\ (int32\_t)0x0000FFFF;}
\DoxyCodeLine{00289\ \ \ \ \ s\ =\ \mbox{\hyperlink{group___c_m_s_i_s___core___instruction_interface_ga372c0535573dde3e37f0f08c774a3487}{\_\_SSAT}}(((((q31\_t)x\ \ \ \ \ \ )\ >>\ 16)\ +\ (((q31\_t)y\ \ \ \ \ \ )\ >>\ 16)),\ 16)\ \&\ (int32\_t)0x0000FFFF;}
\DoxyCodeLine{00290\ }
\DoxyCodeLine{00291\ \ \ \ \ \textcolor{keywordflow}{return}\ ((uint32\_t)((s\ <<\ 16)\ |\ (r\ \ \ \ \ \ )));}
\DoxyCodeLine{00292\ \ \ \}}
\DoxyCodeLine{00293\ }
\DoxyCodeLine{00294\ }
\DoxyCodeLine{00295\ \ \ \textcolor{comment}{/*}}
\DoxyCodeLine{00296\ \textcolor{comment}{\ \ \ *\ @brief\ C\ custom\ defined\ SHADD16}}
\DoxyCodeLine{00297\ \textcolor{comment}{\ \ \ */}}
\DoxyCodeLine{00298\ \ \ \_\_STATIC\_FORCEINLINE\ uint32\_t\ \_\_SHADD16(}
\DoxyCodeLine{00299\ \ \ uint32\_t\ x,}
\DoxyCodeLine{00300\ \ \ uint32\_t\ y)}
\DoxyCodeLine{00301\ \ \ \{}
\DoxyCodeLine{00302\ \ \ \ \ q31\_t\ r,\ s;}
\DoxyCodeLine{00303\ }
\DoxyCodeLine{00304\ \ \ \ \ r\ =\ (((((q31\_t)x\ <<\ 16)\ >>\ 16)\ +\ (((q31\_t)y\ <<\ 16)\ >>\ 16))\ >>\ 1)\ \&\ (int32\_t)0x0000FFFF;}
\DoxyCodeLine{00305\ \ \ \ \ s\ =\ (((((q31\_t)x\ \ \ \ \ \ )\ >>\ 16)\ +\ (((q31\_t)y\ \ \ \ \ \ )\ >>\ 16))\ >>\ 1)\ \&\ (int32\_t)0x0000FFFF;}
\DoxyCodeLine{00306\ }
\DoxyCodeLine{00307\ \ \ \ \ \textcolor{keywordflow}{return}\ ((uint32\_t)((s\ <<\ 16)\ |\ (r\ \ \ \ \ \ )));}
\DoxyCodeLine{00308\ \ \ \}}
\DoxyCodeLine{00309\ }
\DoxyCodeLine{00310\ }
\DoxyCodeLine{00311\ \ \ \textcolor{comment}{/*}}
\DoxyCodeLine{00312\ \textcolor{comment}{\ \ \ *\ @brief\ C\ custom\ defined\ QSUB16}}
\DoxyCodeLine{00313\ \textcolor{comment}{\ \ \ */}}
\DoxyCodeLine{00314\ \ \ \_\_STATIC\_FORCEINLINE\ uint32\_t\ \_\_QSUB16(}
\DoxyCodeLine{00315\ \ \ uint32\_t\ x,}
\DoxyCodeLine{00316\ \ \ uint32\_t\ y)}
\DoxyCodeLine{00317\ \ \ \{}
\DoxyCodeLine{00318\ \ \ \ \ q31\_t\ r,\ s;}
\DoxyCodeLine{00319\ }
\DoxyCodeLine{00320\ \ \ \ \ r\ =\ \mbox{\hyperlink{group___c_m_s_i_s___core___instruction_interface_ga372c0535573dde3e37f0f08c774a3487}{\_\_SSAT}}(((((q31\_t)x\ <<\ 16)\ >>\ 16)\ -\/\ (((q31\_t)y\ <<\ 16)\ >>\ 16)),\ 16)\ \&\ (int32\_t)0x0000FFFF;}
\DoxyCodeLine{00321\ \ \ \ \ s\ =\ \mbox{\hyperlink{group___c_m_s_i_s___core___instruction_interface_ga372c0535573dde3e37f0f08c774a3487}{\_\_SSAT}}(((((q31\_t)x\ \ \ \ \ \ )\ >>\ 16)\ -\/\ (((q31\_t)y\ \ \ \ \ \ )\ >>\ 16)),\ 16)\ \&\ (int32\_t)0x0000FFFF;}
\DoxyCodeLine{00322\ }
\DoxyCodeLine{00323\ \ \ \ \ \textcolor{keywordflow}{return}\ ((uint32\_t)((s\ <<\ 16)\ |\ (r\ \ \ \ \ \ )));}
\DoxyCodeLine{00324\ \ \ \}}
\DoxyCodeLine{00325\ }
\DoxyCodeLine{00326\ }
\DoxyCodeLine{00327\ \ \ \textcolor{comment}{/*}}
\DoxyCodeLine{00328\ \textcolor{comment}{\ \ \ *\ @brief\ C\ custom\ defined\ SHSUB16}}
\DoxyCodeLine{00329\ \textcolor{comment}{\ \ \ */}}
\DoxyCodeLine{00330\ \ \ \_\_STATIC\_FORCEINLINE\ uint32\_t\ \_\_SHSUB16(}
\DoxyCodeLine{00331\ \ \ uint32\_t\ x,}
\DoxyCodeLine{00332\ \ \ uint32\_t\ y)}
\DoxyCodeLine{00333\ \ \ \{}
\DoxyCodeLine{00334\ \ \ \ \ q31\_t\ r,\ s;}
\DoxyCodeLine{00335\ }
\DoxyCodeLine{00336\ \ \ \ \ r\ =\ (((((q31\_t)x\ <<\ 16)\ >>\ 16)\ -\/\ (((q31\_t)y\ <<\ 16)\ >>\ 16))\ >>\ 1)\ \&\ (int32\_t)0x0000FFFF;}
\DoxyCodeLine{00337\ \ \ \ \ s\ =\ (((((q31\_t)x\ \ \ \ \ \ )\ >>\ 16)\ -\/\ (((q31\_t)y\ \ \ \ \ \ )\ >>\ 16))\ >>\ 1)\ \&\ (int32\_t)0x0000FFFF;}
\DoxyCodeLine{00338\ }
\DoxyCodeLine{00339\ \ \ \ \ \textcolor{keywordflow}{return}\ ((uint32\_t)((s\ <<\ 16)\ |\ (r\ \ \ \ \ \ )));}
\DoxyCodeLine{00340\ \ \ \}}
\DoxyCodeLine{00341\ }
\DoxyCodeLine{00342\ }
\DoxyCodeLine{00343\ \ \ \textcolor{comment}{/*}}
\DoxyCodeLine{00344\ \textcolor{comment}{\ \ \ *\ @brief\ C\ custom\ defined\ QASX}}
\DoxyCodeLine{00345\ \textcolor{comment}{\ \ \ */}}
\DoxyCodeLine{00346\ \ \ \_\_STATIC\_FORCEINLINE\ uint32\_t\ \_\_QASX(}
\DoxyCodeLine{00347\ \ \ uint32\_t\ x,}
\DoxyCodeLine{00348\ \ \ uint32\_t\ y)}
\DoxyCodeLine{00349\ \ \ \{}
\DoxyCodeLine{00350\ \ \ \ \ q31\_t\ r,\ s;}
\DoxyCodeLine{00351\ }
\DoxyCodeLine{00352\ \ \ \ \ r\ =\ \mbox{\hyperlink{group___c_m_s_i_s___core___instruction_interface_ga372c0535573dde3e37f0f08c774a3487}{\_\_SSAT}}(((((q31\_t)x\ <<\ 16)\ >>\ 16)\ -\/\ (((q31\_t)y\ \ \ \ \ \ )\ >>\ 16)),\ 16)\ \&\ (int32\_t)0x0000FFFF;}
\DoxyCodeLine{00353\ \ \ \ \ s\ =\ \mbox{\hyperlink{group___c_m_s_i_s___core___instruction_interface_ga372c0535573dde3e37f0f08c774a3487}{\_\_SSAT}}(((((q31\_t)x\ \ \ \ \ \ )\ >>\ 16)\ +\ (((q31\_t)y\ <<\ 16)\ >>\ 16)),\ 16)\ \&\ (int32\_t)0x0000FFFF;}
\DoxyCodeLine{00354\ }
\DoxyCodeLine{00355\ \ \ \ \ \textcolor{keywordflow}{return}\ ((uint32\_t)((s\ <<\ 16)\ |\ (r\ \ \ \ \ \ )));}
\DoxyCodeLine{00356\ \ \ \}}
\DoxyCodeLine{00357\ }
\DoxyCodeLine{00358\ }
\DoxyCodeLine{00359\ \ \ \textcolor{comment}{/*}}
\DoxyCodeLine{00360\ \textcolor{comment}{\ \ \ *\ @brief\ C\ custom\ defined\ SHASX}}
\DoxyCodeLine{00361\ \textcolor{comment}{\ \ \ */}}
\DoxyCodeLine{00362\ \ \ \_\_STATIC\_FORCEINLINE\ uint32\_t\ \_\_SHASX(}
\DoxyCodeLine{00363\ \ \ uint32\_t\ x,}
\DoxyCodeLine{00364\ \ \ uint32\_t\ y)}
\DoxyCodeLine{00365\ \ \ \{}
\DoxyCodeLine{00366\ \ \ \ \ q31\_t\ r,\ s;}
\DoxyCodeLine{00367\ }
\DoxyCodeLine{00368\ \ \ \ \ r\ =\ (((((q31\_t)x\ <<\ 16)\ >>\ 16)\ -\/\ (((q31\_t)y\ \ \ \ \ \ )\ >>\ 16))\ >>\ 1)\ \&\ (int32\_t)0x0000FFFF;}
\DoxyCodeLine{00369\ \ \ \ \ s\ =\ (((((q31\_t)x\ \ \ \ \ \ )\ >>\ 16)\ +\ (((q31\_t)y\ <<\ 16)\ >>\ 16))\ >>\ 1)\ \&\ (int32\_t)0x0000FFFF;}
\DoxyCodeLine{00370\ }
\DoxyCodeLine{00371\ \ \ \ \ \textcolor{keywordflow}{return}\ ((uint32\_t)((s\ <<\ 16)\ |\ (r\ \ \ \ \ \ )));}
\DoxyCodeLine{00372\ \ \ \}}
\DoxyCodeLine{00373\ }
\DoxyCodeLine{00374\ }
\DoxyCodeLine{00375\ \ \ \textcolor{comment}{/*}}
\DoxyCodeLine{00376\ \textcolor{comment}{\ \ \ *\ @brief\ C\ custom\ defined\ QSAX}}
\DoxyCodeLine{00377\ \textcolor{comment}{\ \ \ */}}
\DoxyCodeLine{00378\ \ \ \_\_STATIC\_FORCEINLINE\ uint32\_t\ \_\_QSAX(}
\DoxyCodeLine{00379\ \ \ uint32\_t\ x,}
\DoxyCodeLine{00380\ \ \ uint32\_t\ y)}
\DoxyCodeLine{00381\ \ \ \{}
\DoxyCodeLine{00382\ \ \ \ \ q31\_t\ r,\ s;}
\DoxyCodeLine{00383\ }
\DoxyCodeLine{00384\ \ \ \ \ r\ =\ \mbox{\hyperlink{group___c_m_s_i_s___core___instruction_interface_ga372c0535573dde3e37f0f08c774a3487}{\_\_SSAT}}(((((q31\_t)x\ <<\ 16)\ >>\ 16)\ +\ (((q31\_t)y\ \ \ \ \ \ )\ >>\ 16)),\ 16)\ \&\ (int32\_t)0x0000FFFF;}
\DoxyCodeLine{00385\ \ \ \ \ s\ =\ \mbox{\hyperlink{group___c_m_s_i_s___core___instruction_interface_ga372c0535573dde3e37f0f08c774a3487}{\_\_SSAT}}(((((q31\_t)x\ \ \ \ \ \ )\ >>\ 16)\ -\/\ (((q31\_t)y\ <<\ 16)\ >>\ 16)),\ 16)\ \&\ (int32\_t)0x0000FFFF;}
\DoxyCodeLine{00386\ }
\DoxyCodeLine{00387\ \ \ \ \ \textcolor{keywordflow}{return}\ ((uint32\_t)((s\ <<\ 16)\ |\ (r\ \ \ \ \ \ )));}
\DoxyCodeLine{00388\ \ \ \}}
\DoxyCodeLine{00389\ }
\DoxyCodeLine{00390\ }
\DoxyCodeLine{00391\ \ \ \textcolor{comment}{/*}}
\DoxyCodeLine{00392\ \textcolor{comment}{\ \ \ *\ @brief\ C\ custom\ defined\ SHSAX}}
\DoxyCodeLine{00393\ \textcolor{comment}{\ \ \ */}}
\DoxyCodeLine{00394\ \ \ \_\_STATIC\_FORCEINLINE\ uint32\_t\ \_\_SHSAX(}
\DoxyCodeLine{00395\ \ \ uint32\_t\ x,}
\DoxyCodeLine{00396\ \ \ uint32\_t\ y)}
\DoxyCodeLine{00397\ \ \ \{}
\DoxyCodeLine{00398\ \ \ \ \ q31\_t\ r,\ s;}
\DoxyCodeLine{00399\ }
\DoxyCodeLine{00400\ \ \ \ \ r\ =\ (((((q31\_t)x\ <<\ 16)\ >>\ 16)\ +\ (((q31\_t)y\ \ \ \ \ \ )\ >>\ 16))\ >>\ 1)\ \&\ (int32\_t)0x0000FFFF;}
\DoxyCodeLine{00401\ \ \ \ \ s\ =\ (((((q31\_t)x\ \ \ \ \ \ )\ >>\ 16)\ -\/\ (((q31\_t)y\ <<\ 16)\ >>\ 16))\ >>\ 1)\ \&\ (int32\_t)0x0000FFFF;}
\DoxyCodeLine{00402\ }
\DoxyCodeLine{00403\ \ \ \ \ \textcolor{keywordflow}{return}\ ((uint32\_t)((s\ <<\ 16)\ |\ (r\ \ \ \ \ \ )));}
\DoxyCodeLine{00404\ \ \ \}}
\DoxyCodeLine{00405\ }
\DoxyCodeLine{00406\ }
\DoxyCodeLine{00407\ \ \ \textcolor{comment}{/*}}
\DoxyCodeLine{00408\ \textcolor{comment}{\ \ \ *\ @brief\ C\ custom\ defined\ SMUSDX}}
\DoxyCodeLine{00409\ \textcolor{comment}{\ \ \ */}}
\DoxyCodeLine{00410\ \ \ \_\_STATIC\_FORCEINLINE\ uint32\_t\ \_\_SMUSDX(}
\DoxyCodeLine{00411\ \ \ uint32\_t\ x,}
\DoxyCodeLine{00412\ \ \ uint32\_t\ y)}
\DoxyCodeLine{00413\ \ \ \{}
\DoxyCodeLine{00414\ \ \ \ \ \textcolor{keywordflow}{return}\ ((uint32\_t)(((((q31\_t)x\ <<\ 16)\ >>\ 16)\ *\ (((q31\_t)y\ \ \ \ \ \ )\ >>\ 16))\ -\/}
\DoxyCodeLine{00415\ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ ((((q31\_t)x\ \ \ \ \ \ )\ >>\ 16)\ *\ (((q31\_t)y\ <<\ 16)\ >>\ 16))\ \ \ ));}
\DoxyCodeLine{00416\ \ \ \}}
\DoxyCodeLine{00417\ }
\DoxyCodeLine{00418\ \ \ \textcolor{comment}{/*}}
\DoxyCodeLine{00419\ \textcolor{comment}{\ \ \ *\ @brief\ C\ custom\ defined\ SMUADX}}
\DoxyCodeLine{00420\ \textcolor{comment}{\ \ \ */}}
\DoxyCodeLine{00421\ \ \ \_\_STATIC\_FORCEINLINE\ uint32\_t\ \_\_SMUADX(}
\DoxyCodeLine{00422\ \ \ uint32\_t\ x,}
\DoxyCodeLine{00423\ \ \ uint32\_t\ y)}
\DoxyCodeLine{00424\ \ \ \{}
\DoxyCodeLine{00425\ \ \ \ \ \textcolor{keywordflow}{return}\ ((uint32\_t)(((((q31\_t)x\ <<\ 16)\ >>\ 16)\ *\ (((q31\_t)y\ \ \ \ \ \ )\ >>\ 16))\ +}
\DoxyCodeLine{00426\ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ ((((q31\_t)x\ \ \ \ \ \ )\ >>\ 16)\ *\ (((q31\_t)y\ <<\ 16)\ >>\ 16))\ \ \ ));}
\DoxyCodeLine{00427\ \ \ \}}
\DoxyCodeLine{00428\ }
\DoxyCodeLine{00429\ }
\DoxyCodeLine{00430\ \ \ \textcolor{comment}{/*}}
\DoxyCodeLine{00431\ \textcolor{comment}{\ \ \ *\ @brief\ C\ custom\ defined\ QADD}}
\DoxyCodeLine{00432\ \textcolor{comment}{\ \ \ */}}
\DoxyCodeLine{00433\ \ \ \_\_STATIC\_FORCEINLINE\ int32\_t\ \_\_QADD(}
\DoxyCodeLine{00434\ \ \ int32\_t\ x,}
\DoxyCodeLine{00435\ \ \ int32\_t\ y)}
\DoxyCodeLine{00436\ \ \ \{}
\DoxyCodeLine{00437\ \ \ \ \ \textcolor{keywordflow}{return}\ ((int32\_t)(clip\_q63\_to\_q31((q63\_t)x\ +\ (q31\_t)y)));}
\DoxyCodeLine{00438\ \ \ \}}
\DoxyCodeLine{00439\ }
\DoxyCodeLine{00440\ }
\DoxyCodeLine{00441\ \ \ \textcolor{comment}{/*}}
\DoxyCodeLine{00442\ \textcolor{comment}{\ \ \ *\ @brief\ C\ custom\ defined\ QSUB}}
\DoxyCodeLine{00443\ \textcolor{comment}{\ \ \ */}}
\DoxyCodeLine{00444\ \ \ \_\_STATIC\_FORCEINLINE\ int32\_t\ \_\_QSUB(}
\DoxyCodeLine{00445\ \ \ int32\_t\ x,}
\DoxyCodeLine{00446\ \ \ int32\_t\ y)}
\DoxyCodeLine{00447\ \ \ \{}
\DoxyCodeLine{00448\ \ \ \ \ \textcolor{keywordflow}{return}\ ((int32\_t)(clip\_q63\_to\_q31((q63\_t)x\ -\/\ (q31\_t)y)));}
\DoxyCodeLine{00449\ \ \ \}}
\DoxyCodeLine{00450\ }
\DoxyCodeLine{00451\ }
\DoxyCodeLine{00452\ \ \ \textcolor{comment}{/*}}
\DoxyCodeLine{00453\ \textcolor{comment}{\ \ \ *\ @brief\ C\ custom\ defined\ SMLAD}}
\DoxyCodeLine{00454\ \textcolor{comment}{\ \ \ */}}
\DoxyCodeLine{00455\ \ \ \_\_STATIC\_FORCEINLINE\ uint32\_t\ \_\_SMLAD(}
\DoxyCodeLine{00456\ \ \ uint32\_t\ x,}
\DoxyCodeLine{00457\ \ \ uint32\_t\ y,}
\DoxyCodeLine{00458\ \ \ uint32\_t\ sum)}
\DoxyCodeLine{00459\ \ \ \{}
\DoxyCodeLine{00460\ \ \ \ \ \textcolor{keywordflow}{return}\ ((uint32\_t)(((((q31\_t)x\ <<\ 16)\ >>\ 16)\ *\ (((q31\_t)y\ <<\ 16)\ >>\ 16))\ +}
\DoxyCodeLine{00461\ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ ((((q31\_t)x\ \ \ \ \ \ )\ >>\ 16)\ *\ (((q31\_t)y\ \ \ \ \ \ )\ >>\ 16))\ +}
\DoxyCodeLine{00462\ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ (\ ((q31\_t)sum\ \ \ \ )\ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ )\ \ \ ));}
\DoxyCodeLine{00463\ \ \ \}}
\DoxyCodeLine{00464\ }
\DoxyCodeLine{00465\ }
\DoxyCodeLine{00466\ \ \ \textcolor{comment}{/*}}
\DoxyCodeLine{00467\ \textcolor{comment}{\ \ \ *\ @brief\ C\ custom\ defined\ SMLADX}}
\DoxyCodeLine{00468\ \textcolor{comment}{\ \ \ */}}
\DoxyCodeLine{00469\ \ \ \_\_STATIC\_FORCEINLINE\ uint32\_t\ \_\_SMLADX(}
\DoxyCodeLine{00470\ \ \ uint32\_t\ x,}
\DoxyCodeLine{00471\ \ \ uint32\_t\ y,}
\DoxyCodeLine{00472\ \ \ uint32\_t\ sum)}
\DoxyCodeLine{00473\ \ \ \{}
\DoxyCodeLine{00474\ \ \ \ \ \textcolor{keywordflow}{return}\ ((uint32\_t)(((((q31\_t)x\ <<\ 16)\ >>\ 16)\ *\ (((q31\_t)y\ \ \ \ \ \ )\ >>\ 16))\ +}
\DoxyCodeLine{00475\ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ ((((q31\_t)x\ \ \ \ \ \ )\ >>\ 16)\ *\ (((q31\_t)y\ <<\ 16)\ >>\ 16))\ +}
\DoxyCodeLine{00476\ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ (\ ((q31\_t)sum\ \ \ \ )\ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ )\ \ \ ));}
\DoxyCodeLine{00477\ \ \ \}}
\DoxyCodeLine{00478\ }
\DoxyCodeLine{00479\ }
\DoxyCodeLine{00480\ \ \ \textcolor{comment}{/*}}
\DoxyCodeLine{00481\ \textcolor{comment}{\ \ \ *\ @brief\ C\ custom\ defined\ SMLSDX}}
\DoxyCodeLine{00482\ \textcolor{comment}{\ \ \ */}}
\DoxyCodeLine{00483\ \ \ \_\_STATIC\_FORCEINLINE\ uint32\_t\ \_\_SMLSDX(}
\DoxyCodeLine{00484\ \ \ uint32\_t\ x,}
\DoxyCodeLine{00485\ \ \ uint32\_t\ y,}
\DoxyCodeLine{00486\ \ \ uint32\_t\ sum)}
\DoxyCodeLine{00487\ \ \ \{}
\DoxyCodeLine{00488\ \ \ \ \ \textcolor{keywordflow}{return}\ ((uint32\_t)(((((q31\_t)x\ <<\ 16)\ >>\ 16)\ *\ (((q31\_t)y\ \ \ \ \ \ )\ >>\ 16))\ -\/}
\DoxyCodeLine{00489\ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ ((((q31\_t)x\ \ \ \ \ \ )\ >>\ 16)\ *\ (((q31\_t)y\ <<\ 16)\ >>\ 16))\ +}
\DoxyCodeLine{00490\ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ (\ ((q31\_t)sum\ \ \ \ )\ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ )\ \ \ ));}
\DoxyCodeLine{00491\ \ \ \}}
\DoxyCodeLine{00492\ }
\DoxyCodeLine{00493\ }
\DoxyCodeLine{00494\ \ \ \textcolor{comment}{/*}}
\DoxyCodeLine{00495\ \textcolor{comment}{\ \ \ *\ @brief\ C\ custom\ defined\ SMLALD}}
\DoxyCodeLine{00496\ \textcolor{comment}{\ \ \ */}}
\DoxyCodeLine{00497\ \ \ \_\_STATIC\_FORCEINLINE\ uint64\_t\ \_\_SMLALD(}
\DoxyCodeLine{00498\ \ \ uint32\_t\ x,}
\DoxyCodeLine{00499\ \ \ uint32\_t\ y,}
\DoxyCodeLine{00500\ \ \ uint64\_t\ sum)}
\DoxyCodeLine{00501\ \ \ \{}
\DoxyCodeLine{00502\ \textcolor{comment}{/*\ \ return\ (sum\ +\ ((q15\_t)\ (x\ >>\ 16)\ *\ (q15\_t)\ (y\ >>\ 16))\ +\ ((q15\_t)\ x\ *\ (q15\_t)\ y));\ */}}
\DoxyCodeLine{00503\ \ \ \ \ \textcolor{keywordflow}{return}\ ((uint64\_t)(((((q31\_t)x\ <<\ 16)\ >>\ 16)\ *\ (((q31\_t)y\ <<\ 16)\ >>\ 16))\ +}
\DoxyCodeLine{00504\ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ ((((q31\_t)x\ \ \ \ \ \ )\ >>\ 16)\ *\ (((q31\_t)y\ \ \ \ \ \ )\ >>\ 16))\ +}
\DoxyCodeLine{00505\ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ (\ ((q63\_t)sum\ \ \ \ )\ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ )\ \ \ ));}
\DoxyCodeLine{00506\ \ \ \}}
\DoxyCodeLine{00507\ }
\DoxyCodeLine{00508\ }
\DoxyCodeLine{00509\ \ \ \textcolor{comment}{/*}}
\DoxyCodeLine{00510\ \textcolor{comment}{\ \ \ *\ @brief\ C\ custom\ defined\ SMLALDX}}
\DoxyCodeLine{00511\ \textcolor{comment}{\ \ \ */}}
\DoxyCodeLine{00512\ \ \ \_\_STATIC\_FORCEINLINE\ uint64\_t\ \_\_SMLALDX(}
\DoxyCodeLine{00513\ \ \ uint32\_t\ x,}
\DoxyCodeLine{00514\ \ \ uint32\_t\ y,}
\DoxyCodeLine{00515\ \ \ uint64\_t\ sum)}
\DoxyCodeLine{00516\ \ \ \{}
\DoxyCodeLine{00517\ \textcolor{comment}{/*\ \ return\ (sum\ +\ ((q15\_t)\ (x\ >>\ 16)\ *\ (q15\_t)\ y))\ +\ ((q15\_t)\ x\ *\ (q15\_t)\ (y\ >>\ 16));\ */}}
\DoxyCodeLine{00518\ \ \ \ \ \textcolor{keywordflow}{return}\ ((uint64\_t)(((((q31\_t)x\ <<\ 16)\ >>\ 16)\ *\ (((q31\_t)y\ \ \ \ \ \ )\ >>\ 16))\ +}
\DoxyCodeLine{00519\ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ ((((q31\_t)x\ \ \ \ \ \ )\ >>\ 16)\ *\ (((q31\_t)y\ <<\ 16)\ >>\ 16))\ +}
\DoxyCodeLine{00520\ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ (\ ((q63\_t)sum\ \ \ \ )\ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ )\ \ \ ));}
\DoxyCodeLine{00521\ \ \ \}}
\DoxyCodeLine{00522\ }
\DoxyCodeLine{00523\ }
\DoxyCodeLine{00524\ \ \ \textcolor{comment}{/*}}
\DoxyCodeLine{00525\ \textcolor{comment}{\ \ \ *\ @brief\ C\ custom\ defined\ SMUAD}}
\DoxyCodeLine{00526\ \textcolor{comment}{\ \ \ */}}
\DoxyCodeLine{00527\ \ \ \_\_STATIC\_FORCEINLINE\ uint32\_t\ \_\_SMUAD(}
\DoxyCodeLine{00528\ \ \ uint32\_t\ x,}
\DoxyCodeLine{00529\ \ \ uint32\_t\ y)}
\DoxyCodeLine{00530\ \ \ \{}
\DoxyCodeLine{00531\ \ \ \ \ \textcolor{keywordflow}{return}\ ((uint32\_t)(((((q31\_t)x\ <<\ 16)\ >>\ 16)\ *\ (((q31\_t)y\ <<\ 16)\ >>\ 16))\ +}
\DoxyCodeLine{00532\ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ ((((q31\_t)x\ \ \ \ \ \ )\ >>\ 16)\ *\ (((q31\_t)y\ \ \ \ \ \ )\ >>\ 16))\ \ \ ));}
\DoxyCodeLine{00533\ \ \ \}}
\DoxyCodeLine{00534\ }
\DoxyCodeLine{00535\ }
\DoxyCodeLine{00536\ \ \ \textcolor{comment}{/*}}
\DoxyCodeLine{00537\ \textcolor{comment}{\ \ \ *\ @brief\ C\ custom\ defined\ SMUSD}}
\DoxyCodeLine{00538\ \textcolor{comment}{\ \ \ */}}
\DoxyCodeLine{00539\ \ \ \_\_STATIC\_FORCEINLINE\ uint32\_t\ \_\_SMUSD(}
\DoxyCodeLine{00540\ \ \ uint32\_t\ x,}
\DoxyCodeLine{00541\ \ \ uint32\_t\ y)}
\DoxyCodeLine{00542\ \ \ \{}
\DoxyCodeLine{00543\ \ \ \ \ \textcolor{keywordflow}{return}\ ((uint32\_t)(((((q31\_t)x\ <<\ 16)\ >>\ 16)\ *\ (((q31\_t)y\ <<\ 16)\ >>\ 16))\ -\/}
\DoxyCodeLine{00544\ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ ((((q31\_t)x\ \ \ \ \ \ )\ >>\ 16)\ *\ (((q31\_t)y\ \ \ \ \ \ )\ >>\ 16))\ \ \ ));}
\DoxyCodeLine{00545\ \ \ \}}
\DoxyCodeLine{00546\ }
\DoxyCodeLine{00547\ }
\DoxyCodeLine{00548\ \ \ \textcolor{comment}{/*}}
\DoxyCodeLine{00549\ \textcolor{comment}{\ \ \ *\ @brief\ C\ custom\ defined\ SXTB16}}
\DoxyCodeLine{00550\ \textcolor{comment}{\ \ \ */}}
\DoxyCodeLine{00551\ \ \ \_\_STATIC\_FORCEINLINE\ uint32\_t\ \_\_SXTB16(}
\DoxyCodeLine{00552\ \ \ uint32\_t\ x)}
\DoxyCodeLine{00553\ \ \ \{}
\DoxyCodeLine{00554\ \ \ \ \ \textcolor{keywordflow}{return}\ ((uint32\_t)(((((q31\_t)x\ <<\ 24)\ >>\ 24)\ \&\ (q31\_t)0x0000FFFF)\ |}
\DoxyCodeLine{00555\ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ ((((q31\_t)x\ <<\ \ 8)\ >>\ \ 8)\ \&\ (q31\_t)0xFFFF0000)\ \ ));}
\DoxyCodeLine{00556\ \ \ \}}
\DoxyCodeLine{00557\ }
\DoxyCodeLine{00558\ \ \ \textcolor{comment}{/*}}
\DoxyCodeLine{00559\ \textcolor{comment}{\ \ \ *\ @brief\ C\ custom\ defined\ SMMLA}}
\DoxyCodeLine{00560\ \textcolor{comment}{\ \ \ */}}
\DoxyCodeLine{00561\ \ \ \_\_STATIC\_FORCEINLINE\ int32\_t\ \_\_SMMLA(}
\DoxyCodeLine{00562\ \ \ int32\_t\ x,}
\DoxyCodeLine{00563\ \ \ int32\_t\ y,}
\DoxyCodeLine{00564\ \ \ int32\_t\ sum)}
\DoxyCodeLine{00565\ \ \ \{}
\DoxyCodeLine{00566\ \ \ \ \ \textcolor{keywordflow}{return}\ (sum\ +\ (int32\_t)\ (((int64\_t)\ x\ *\ y)\ >>\ 32));}
\DoxyCodeLine{00567\ \ \ \}}
\DoxyCodeLine{00568\ }
\DoxyCodeLine{00569\ \textcolor{preprocessor}{\#endif\ }\textcolor{comment}{/*\ !defined\ (ARM\_MATH\_DSP)\ */}\textcolor{preprocessor}{}}
\DoxyCodeLine{00570\ }
\DoxyCodeLine{00571\ }
\DoxyCodeLine{00572\ \textcolor{preprocessor}{\#ifdef\ \ \ \_\_cplusplus}}
\DoxyCodeLine{00573\ \}}
\DoxyCodeLine{00574\ \textcolor{preprocessor}{\#endif}}
\DoxyCodeLine{00575\ }
\DoxyCodeLine{00576\ \textcolor{preprocessor}{\#endif\ }\textcolor{comment}{/*\ ifndef\ \_TRANSFORM\_FUNCTIONS\_H\_\ */}\textcolor{preprocessor}{}}

\end{DoxyCode}
